home *** CD-ROM | disk | FTP | other *** search
- /* -*- c -*- ------------------------------------------------------------- *
- *
- * Copyright 2004 Murali Krishnan Ganapathy - All Rights Reserved
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, Inc., 53 Temple Place Ste 330,
- * Boston MA 02111-1307, USA; either version 2 of the License, or
- * (at your option) any later version; incorporated herein by reference.
- *
- * ----------------------------------------------------------------------- */
-
- #include "string.h"
-
- /* String routines */
- void *memset(void *buf, int chr, unsigned int len)
- {
- asm("cld ; rep ; stosb" : "+D" (buf), "+c" (len) : "a" (chr));
- return buf;
- }
-
- char *strcpy(char *dst, const char *src)
- {
- char *r = dst;
- char c;
-
- do {
- c = *src++;
- *dst++ = c;
- } while ( c );
-
- return r;
- }
-
- char *strcat(char *dst, const char * src)
- {
- char *r = dst;
-
- while (*dst++); // Find end of string
- dst--;
- while (*src) *dst++ = *src++; // Append
- *dst = '\0'; // Terminate string
-
- return r;
- }
-
- int strcmp(const char *a, const char*b)
- {
- while (*a)
- {
- if (*a < *b) return -1;
- if (*a++ > *b++) return 1;
- }
- if (*b) return 1; else return 0;
- }
-
- int strlen(const char *a)
- {
- int ans = 0;
-
- while (*a++) ans++;
- return ans;
- }
-
-